home *** CD-ROM | disk | FTP | other *** search
- package com.ibm.xml.framework;
-
- import org.xml.sax.InputSource;
-
- public abstract class XMLDeclRecognizer {
- private static final char[] xml_string = new char[]{'x', 'm', 'l'};
- private static final char[] version_string = new char[]{'v', 'e', 'r', 's', 'i', 'o', 'n'};
- private static final char[] encoding_string = new char[]{'e', 'n', 'c', 'o', 'd', 'i', 'n', 'g'};
-
- public abstract XMLReader recognize(ParserState var1, InputSource var2, ChunkyByteArray var3, boolean var4) throws Exception;
-
- protected final int prescanXMLDeclOrTextDecl(XMLReader var1, boolean var2) throws Exception {
- if (!var1.skippedChar('<')) {
- return -1;
- } else if (!var1.skippedChar('?')) {
- return -1;
- } else if (!var1.skippedString(xml_string)) {
- return -1;
- } else {
- var1.skipPastSpaces();
- if (var1.skippedString(version_string)) {
- var1.skipPastSpaces();
- if (!var1.skippedChar('=')) {
- return -1;
- }
-
- var1.skipPastSpaces();
- boolean var3;
- if (!(var3 = var1.skippedChar('\'')) && !var1.skippedChar('"')) {
- return -1;
- }
-
- int var4 = var3 ? 39 : 34;
-
- while(!var1.skippedChar((char)var4)) {
- if (!var1.skippedVersionNum()) {
- return -1;
- }
- }
-
- if (!var1.skippedSpace()) {
- return -1;
- }
-
- var1.skipPastSpaces();
- } else if (var2) {
- return -1;
- }
-
- if (!var1.skippedString(encoding_string)) {
- return -1;
- } else {
- var1.skipPastSpaces();
- if (!var1.skippedChar('=')) {
- return -1;
- } else {
- var1.skipPastSpaces();
- boolean var6;
- if (!(var6 = var1.skippedChar('\'')) && !var1.skippedChar('"')) {
- return -1;
- } else {
- int var5 = var1.fCurrentOffset;
- int var7 = var6 ? 39 : 34;
- if (!var1.skippedAlpha()) {
- return -1;
- } else {
- while(!var1.lookingAtChar((char)var7)) {
- if (!var1.skippedEncName()) {
- return -1;
- }
- }
-
- return var1.addString(var5, var1.fCurrentOffset - var5);
- }
- }
- }
- }
- }
- }
- }
-